/*
 *  AgentStyle.cpp
 *  MilovoMg00
 *
 *  Created by luca on 03/08/06.
 *  Copyright 2006 __MyCompanyName__. All rights reserved.
 *
 */


#include "AgentStyle.h"

AgentStyle::AgentStyle() {
	ProbImitation = 0.2;
	ProbJump = 0.3;
	StartJumpRange = 0.7;
	EndJumpRange = 6.0;
	JumpRangeUsed = 0.0;
	ProbDevelopNewGoal = 1.0;
	InnovationStrategy = 3;
	UseSuppliersChange = -0.2;
	HowManyNewFriends = 5;
	IncludeZeroAgentInNewFriends = 1;
	SelectGoalInAgentOutput = -1;
	ProbGoalFromRequest = 0.0;
	ValidateRecipeOutput = 4;
	NProduceFloor = 0;
	NProduceCeil = 10;
	AlfaTransactions = 0.05;
	BetaProjects = 0.95;
	LambdaTransactions = 0.01;
	LambdaProjects = 0.001;
	ValueSuccessedProjects = 2;
	ValueFailedProjects = 0;
	ProjectsDeadLevel = 1.5;
	SelectPartnerMode = 1;
	MaxRecipesAllowed = 0;
	ScaffProb = 0.0;
	AcceptScaffMinLevel = 1;
	UseDeepSearchGoal = 0;
	KnowledgeDecay = 0;
	ChangeSupplierMethod = 1;
	ProduceRecipeMethod = 1;
}

AgentStyle::AgentStyle(Mil_Double tmpProbImitation, Mil_Double tmpProbJump, Mil_Double tmpStartJumpRange, Mil_Double tmpEndJumpRange, Mil_Int tmpJumpRangeUsed,
							  Mil_Double tmpProbDevelopNewGoal, Mil_Int tmpInnovationStrategy, Mil_Int tmpSelectPartnerMode, Mil_Int tmpMaxRecipesAllowed, 
							  Mil_Double tmpUseSuppliersChange, Mil_Int tmpHowManyNewFriends, Mil_Int tmpIncludeZeroAgentInNewFriends, Mil_Double tmpProbGoalFromRequest,
							  Mil_Int tmpSelectGoalInAgentOutput, Mil_Int tmpValidateRecipeOutput, Mil_Int tmpNProduceCeil, Mil_Int tmpNProduceFloor, 
							  Mil_Double tmpAlfaTransactions, Mil_Double tmpBetaProjects, Mil_Double tmpLambdaTransactions, Mil_Double tmpLambdaProjects, 
							  Mil_Double tmpValueSuccessedProjects, Mil_Double tmpValueFailedProjects, Mil_Double tmpProjectsDeadLevel, Mil_Double tmpScaffProb,
							  Mil_Int tmpAcceptScaffMinLevel, Mil_Int tmpUseDeepSearchGoal, Mil_Int tmpKnowledgeDecay, Mil_Int tmpChangeSupplierMethod, 
							  Mil_Int tmpProduceRecipeMethod)
{
	ProbImitation = tmpProbImitation;
	ProbJump = tmpProbJump;
	StartJumpRange = tmpStartJumpRange;
	EndJumpRange = tmpEndJumpRange;
	JumpRangeUsed = tmpJumpRangeUsed;
	ProbDevelopNewGoal = tmpProbDevelopNewGoal;
	InnovationStrategy = tmpInnovationStrategy;
	UseSuppliersChange = tmpUseSuppliersChange;
	HowManyNewFriends = tmpHowManyNewFriends;
	IncludeZeroAgentInNewFriends = tmpIncludeZeroAgentInNewFriends;
	ProbGoalFromRequest = tmpProbGoalFromRequest;
	SelectGoalInAgentOutput = tmpSelectGoalInAgentOutput;
	ValidateRecipeOutput = tmpValidateRecipeOutput;
	NProduceFloor = tmpNProduceFloor;
	NProduceCeil = tmpNProduceCeil;
	AlfaTransactions = tmpAlfaTransactions;
	BetaProjects = tmpBetaProjects;
	LambdaTransactions = tmpLambdaTransactions;
	LambdaProjects = tmpLambdaProjects;
	ValueSuccessedProjects = tmpValueSuccessedProjects;
	ValueFailedProjects = tmpValueFailedProjects;
	ProjectsDeadLevel = tmpProjectsDeadLevel;
	SelectPartnerMode = tmpSelectPartnerMode;
	MaxRecipesAllowed = tmpMaxRecipesAllowed;
	ScaffProb = tmpScaffProb;
	AcceptScaffMinLevel = tmpAcceptScaffMinLevel;
	UseDeepSearchGoal = tmpUseDeepSearchGoal;
	KnowledgeDecay = tmpKnowledgeDecay;
	ChangeSupplierMethod = tmpChangeSupplierMethod;
	ProduceRecipeMethod = tmpProduceRecipeMethod;
}

AgentStyle::~AgentStyle()
{
}

